package com.ruoyi.system.service;

import com.ruoyi.system.domain.SysRoleDept;

import java.util.List;
import java.util.Set;

/**
 * 角色业务层
 *
 * @author ruoyi
 */
public interface ISysRoleDeptService {


    public List<SysRoleDept> selectRoleDeptList(SysRoleDept roleDept);

    /**
     * 获取最底层的菜单
     *
     * @return
     */
    public Set<Long> selectRoleBottomDept(Long deptId, String roleKey);

    public List<SysRoleDept> getDiffRoleDept(Long deptId, String roleKey, Long[] menuIds);

    public Set<Long> getRoleDeptContainSelf(Long deptId, String roleKey);

    public Set<Long> getRoleDeptExcludeSelf(Long deptId, String roleKey);

    public Set<Long> getRoleDept(List<Long> deptIds, String roleKey);

    public Set<Long> getRoleDept(List<Long> deptIds, String roleKey, Boolean isOnlyBottomDept);

    public List<SysRoleDept> getDiffRoleDept(Long deptId, String roleKey, List<Long> menuIdList);
}
